A cellular telephone is commonly implemented using a processor to perform control functions, with the processor having associated volatile static random-access memory (VSRAM) as well as nonvolatile static random-access memory (NVSRAM) that provides backup storage for the VSRAM.
The VSRAM is a high-performance, high-density memory used for storage of code, temporary data and downloaded data, and optionally for running the processor's operating system and application programs.
The NVSRAM is a lower-density memory used only for the backup of data from the processor, and achieves nonvolatility by backup battery means.
The control, address and data signals that connect the VSRAM and the processor are also utilized to connect the NVSRAM and the processor.
The processor is able to: store data in the VSRAM; store data in the NVSRAM; retrieve data from the VSRAM; and retrieve data from the NVSRAM.
In order to ensure that a nonvolatile copy of data written to the VSRAM is preserved in the NVSRAM, the processor must write the data to the VSRAM and also write the data once again to the NVSRAM.
In order to restore a datum from the NVSRAM to the VSRAM, the processor must read the datum from the NVSRAM and then write it to the VSRAM.
The performance of the processor could be improved if a means were available to allow the processor to write data to the VSRAM and have the data be written to the NVSRAM automatically without incurring the overhead of the additional time required to perform the backup-write memory access.
The performance of the processor could also be improved if a means were available to allow the processor to issue a single memory request that would restore a datum from the NVSRAM to the VSRAM automatically without incurring the overhead of the additional time required to perform the restore-write memory access.